package com.ztgf.shopping.models.service.shop;

import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.service.IService;
import com.ztgf.common.constant.Result;
import com.ztgf.shopping.models.bo.shop.ShopSysInvoiceBO;
import com.ztgf.shopping.models.bo.shop.ShopSysInvoiceQueryBO;
import com.ztgf.shopping.models.bo.shop.ShopSysInvoiceSaveBO;
import com.ztgf.shopping.models.dto.shop.ShopSysInvoiceDTO;
import com.ztgf.shopping.models.vo.shop.ShopSysInvoiceApplyVO;
import com.ztgf.shopping.models.vo.shop.ShopSysInvoiceRelevanceVO;
import com.ztgf.shopping.models.vo.shop.ShopSysInvoiceVO;

import java.util.Date;
import java.util.List;

/**
 * 店铺平台开票服务
 *
 * @author liyang
 * @Date 2021-05-26 12:08:14
 */
public interface IShopSysInvoiceService extends IService<ShopSysInvoiceDTO> {
    boolean add(ShopSysInvoiceSaveBO saveBO);

    Page<ShopSysInvoiceVO> queryPageList(ShopSysInvoiceBO bo);

    List<ShopSysInvoiceRelevanceVO> selectVOS(Long id);

    List<ShopSysInvoiceVO> selectByMonth(Date date, Long shopId,Integer priceType,Integer sellOrBuyType);

    Result<ShopSysInvoiceApplyVO> applyInvoice(ShopSysInvoiceQueryBO bo);
}
